package dauphine.ouvrage;

import java.util.ArrayList;
import java.util.List;

/**
 * 
 * @author AMRANI MESBAHI Jaafar
 * @author HANNACHI Arij
 */
public class Ouvrage {

	private String titre = "";
	private String type = "";
	private List<Auteur> auteurs = new ArrayList<Auteur>();
	private Stock stock = null;

	public Ouvrage(String titre, String type, List<Auteur> auteurs) {
		super();
		this.titre = titre;
		this.type = type;
		if (auteurs == null) this.auteurs = new ArrayList<Auteur>();
		else this.auteurs = auteurs;
	}


	/**
	 * 
	 * @return titre
	 */
	public String getTitre() {
		return titre;
	}
	/**
	 * 
	 * @param titre
	 */
	public void setTitre(String titre) {
		this.titre = titre;
	}
	/**
	 * 
	 * @return type
	 */
	public String getType() {
		return type;
	}
	/**
	 * 
	 * @param type
	 */
	public void setType(String type) {
		this.type = type;
	}
	/**
	 * 
	 * @return auteurs
	 */
	public List<Auteur> getAuteurs() {
		return auteurs;
	}
	/**
	 * 
	 * @param auteurs
	 */
	public void setAuteurs(List<Auteur> auteurs) {
		this.auteurs = auteurs;
	}
	/**
	 * 
	 * @param auteur
	 * @return
	 */
	public boolean checkAuteur(Auteur auteur){
		for (Auteur a : auteurs) {
			if(a.equals(auteur))
				return true;
		}
		return false;
	}
	/**
	 * 
	 */
	public int addAuteur(Auteur a){
		if(checkAuteur(a)==false){
			auteurs.add(a);
			return 1;
		}
		return 0;
	}


	public boolean AfficherOuvrages(Stock stock) {
		if(stock.size() > 0){
			for (int i=0;i<stock.size();i++){			
				System.out.println("\n--------------------\n");
				System.out.println(stock.getOuvrage(i).toString());
				System.out.println("\n--------------------\n");
			}
			return true; 
		}
		return false;

	}

	@Override
	public String toString() {
		// TODO Auto-generated method stub				
		String chaine = "";		
		chaine = chaine + "Titre : "+ this.titre +"\n";
		chaine = chaine + " Type : "+ this.type +"\n";
		for (int i=0;i<this.auteurs.size();i++){
			chaine = chaine + this.auteurs.get(i).toString();		
		}

		return chaine;
	}


}
